package MAIN;

//笔试强训第4天
//选择题

/*算法就是程序，错误，程序是算法，但是算法不一定是程序  */
/*abstract类的子类必须实现其超类的所有的abstract方法，错误，要看它的子类是
* 普通的类还是抽象类，如果是抽象类，完全可以不实现，但是如果爷爷类和父类都是
* 抽象方法，此时子类继承了这个父类就需要重写爷爷类和父类中的所有抽象方法*/

import javax.naming.directory.SchemaViolationException;
import java.util.Scanner;

interface IA {
    //接口中默认的方法都是public abstract的
    //所以写不写这两个都没关系，默认都是public的，默认都是abstract的
    public static void main(String[] args) {
        //所以，接口中是可以写一个main方法的
    }
}
public class Main4 {
    //编程题
    //1.求糖果个数  思路：求解方程，B是可以求出两个的（分别用两个表达式）
    // 如果两个B值相等，此时就符合题解
    public static void main1(String[] args) {
        Scanner scan = new Scanner(System.in);
        while (scan.hasNextInt()) {
            int a = scan.nextInt();
            int b = scan.nextInt();
            int c = scan.nextInt();
            int d = scan.nextInt();

            int A = (a + c) / 2;
            int B1 = (b + d) / 2;
            int B2 = (c - a) / 2;
            int C = (d - b) / 2;
            if (B1 != B2) {
                System.out.println("No");
            }else {
                System.out.println(A + " " + B1 + " " + C);
            }
        }
    }

    //2.进制的转换，给一个数字和一个要转换的进制数字，完成进制的转换
    //输入 7 2  输出111
    //思路：首先把要转换的进制数字写成一个字符串，然后让数字取模，然后/，一直除到0为止
    //然后去对应字符串的下标去找进制数字，然后完成字符串的拼接，最后逆置（有负号的数字要判断）
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        while (scan.hasNextInt()) {
            int m = scan.nextInt();
            int n = scan.nextInt();

            StringBuilder sb1 = new StringBuilder();//初始化一个字符串，进行字符串的拼接
            String table = "0123456789ABCDEF";
            boolean flg = false;
            if (m < 0) {
                m = -m;
                flg = true;
            }
            while (m != 0) {
                //取模是为了拿到每一位的数字，/ 是为了去掉每一位的数字
                sb1.append(table.charAt(m%n));
                m /= n;
            }
            //从个位开始拿的数字，要对字符串进行逆置
            if (flg) {
                sb1.append("-");
            }
            sb1.reverse();
            System.out.println(sb1.toString());
        }
    }
}
